package com.xbongbong.aiassistant.domain.entity;

import com.alibaba.fastjson.JSONObject;
import com.xbongbong.saas.enums.business.ProductEnum;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.io.Serializable;
import java.util.Objects;

/**
 * @description: 智能助手需要的数据实体
 * @Author: hongxiao
 * @date: 2020-02-23 20:52
 * @since
 */
@Getter
@Setter
@ToString
public class AiProductEntity implements Serializable {
    private static final long serialVersionUID = 3949462037370842009L;

    /**
     * 数据id
     */
    private Long id;
    /**
     * 公司id
     */
    private String corpid;
    /**
     * 应用id
     */
    private Long appId;
    /**
     * 菜单id
     */
    private Long menuId;
    /**
     * 表单id
     */
    private Long formId;
    /**
     * 编号
     */
    private String serialNo;
    /**
     * 创建人
     */
    private String creatorId;


    private JSONObject data;
    /**
     * 名称：data里数据
     */
    private String name;
    /**
     * 产品编号
     */
    private String productNo;
    /**
     * 父产品id
     */
    private Long parentId;

    /**
     * 设置data数据
     * @param name 名称
     * @param productNo 产品编号
     * @param parentId 父产品id
     */
    public void setData(String name, String productNo, Long parentId) {
        if (Objects.isNull(data)) {
            data = new JSONObject();
        }
        if (Objects.nonNull(name)) {
            data.put(ProductEnum.NAME.getAttr(), name);
        }
        if (Objects.nonNull(productNo)) {
            data.put(ProductEnum.PRODUCT_NO.getAttr(), productNo);
        }
        if (Objects.nonNull(parentId)) {
            data.put(ProductEnum.PARENT_ID.getAttr(), parentId);
        }
    }
}
